package com.tanhua.api;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tanhua.model.dto.RecommendUserDto;
import com.tanhua.model.pojo.UserInfo;

import java.util.List;

public interface UserInfoApi {

    void save(UserInfo userInfo);

    void update(UserInfo userInfo);

    UserInfo findById(Long  id);


    /**
     * 分页查询推荐好友列表
     * @param ids
     * @param recommendUserDto
     * @return
     */
    Page<UserInfo> findByIds(List<Long> ids, RecommendUserDto recommendUserDto);


    /**
     * 根据用户的好友ids查询好友详情（分页查询展示）
     * @param ids
     * @return
     */
    List<UserInfo> findFriendIds(List<Long> ids);



    /**
     * 根据评论人的id查询评论人的用户详情
     * @param ids
     * @return
     */
    List<UserInfo> findByUserId(List<Long> ids);

    /**
     *根据好友的id查询好友的详情
     * @param page
     * @param pagesize
     * @param friendIds
     * @param keyword
     * @return
     */
    List<UserInfo> findByFriends(Integer page, Integer pagesize, List<Long> friendIds, String keyword);

    /**
     * 探花搜索附近用户时，通过附近用户ids带条件查询（gender）
     * @param userIds
     * @param gender
     * @return
     */
    List<UserInfo> findByUserIds(List<Long> userIds, String gender);
}
